1. Field of the Invention
This invention relates to a communication system, such as a network of interconnected nodes for sending streaming data and non-streaming data across a network having a frame transfer rate that can be dissimilar from the sampling rate of the data at the source or destination nodes. Ports within the source or destination port preferably include circuits that use the synchronous frame transfer rate of the network to generate sample and master clocks at the source and destination ports.
2. Description of the Related Art
Communication systems are generally well known as containing at least two nodes interconnected by a transmission line. Each node may include a data source and/or a data destination. If the node is configured to transmit data into the network, the node is known as a source port. Another node can be configured to receive data from the network and is sometimes known as a destination port. A node can be configured to source data during one transaction and receive data during another transaction and, therefore, is a transceiver. Each source port and each destination port may comprise a port, hereinafter known as a source port and a destination port. The source port is used to source the input of data onto the network, and the destination port receives data from the network. The source port can be configured on a single monolithic substrate as an integrated circuit that is coupled to other subsystems within the source port. Similarly, the destination port is an integrated circuit within the destination port.
It is generally desirable that the transmission line of the network accommodate not only digital data, but also data that can arrive as voice data, audio data, video data, or bursts of data derived from a computer domain. An optimal transmission line is, therefore, one that can receive information from a multimedia device herein defined as any hardware and/or software module that can transfer information in whatever form upon the network. The transmission line can either be a copper wire, optical fiber, or a wireless transmission medium.
There are many types of multimedia devices. For example, a multimedia device can include a telephone, a compact disc (CD) player, a digital video disc (DVD) player, a computer, an amplifier, a speaker, or any device which can send and receive different types of data across a transmission line of the network.
Popular types of data include streaming data or packetized data. Streaming data is data that has a temporal relationship between samples produced from a source port onto the network. The relationship between those samples must be maintained across the transmission line to prevent perceptible errors, such as gaps or altered frequencies. A loss in the temporal relationship can cause a receiver at a destination port to present jitter, echo, or, in the worst instance, periodic blanks in the voice or video stream. Converse to streaming data, packetized data is data which need not maintain the sample rate or temporal relationship of that data and, instead, can be sent as disjointed bursts across the transmission line. The packets of data can be sent across the transmission line at virtually any rate at which the transmission line transfers data and is not dependent, in any fashion, on any sampling frequency since packetized data is generally recognized as non-sampled data.
Depending on the frequency difference between the local clock of the source port (or destination port) and the network frame transfer rate, streaming data can be sent either synchronously or isochronously across the network. If the sample rate (i.e., “fs”) local to the node is at the same frequency as the frame synchronization rate (i.e., “FSR”) of the transmission line, then the streaming data can be sent synchronously across the network. However, in many instances, FSR is dissimilar from fs. Thus, the sample rate must be changed (or converted) or the streaming data must be sent isochronously across the network, where isochronous transfer protocols are used to accommodate the frequency differences in order to prevent perceptible gaps, errors, jitter, or echo.
One methodology in which to prevent sending data isochronously is to sample rate convert the data at the source before the data is sent onto the network. There are various sample rate converters currently available on the market. For example, Analog Devices offers part no. AD1896 that converts the sample rate offered by the local clock to another sample rate synchronous to, for example, another clock. Either increasing or decreasing the sample rate would therefore be beneficial if, indeed, a system can be employed that can match fs to FSR.
In order to implement sample rate conversion in a network environment, a frequency comparator is needed to compare the local sample rate clock to the frame transfer rate and, depending on that frequency comparison, modify the sample rate to match FSR. Conventional frequency comparators typically use a timer that formulates the frequency comparison after several samples are taken over multiple clock cycles. Once the necessary number of clock cycles has occurred, the frequency difference is then measured and, for example, impulse response coefficients of the FIR digital filter within the sample rate converter are set. Of course, this requires a fairly complex digital filter and a digital signal processor (DSP), as well as a time-consumptive frequency comparator within each source port. If, for example, the audio information from a DVD must be sample rate converted, then the multiple channels streaming from the DVD will require a fairly expensive DSPs to perform the sample rate conversion. Thus, in some cases, sample rate conversion can be fairly complex and expensive to implement. Moreover, if sample rate conversion is used, the frequency comparison mechanism can often take too long and, therefore, introduce additional jitter and audible artifacts into the data received at the destination port.
If used, typical sample rate converters are employed at the source port of the network. A DVD by its nature contains compressed data. The compressed data must be decompressed before the data is sample rate converted to a frame rate of the network. Thereafter, the decompressed, sample rate converted data is sent across the network. Unfortunately, sending decompressed data consumes more network bandwidth than sending compressed data. It would therefore be desirable to sample rate convert at the destination rather than at the source. However, the frame rate of the isochronous data cannot be used at the destination since it is dissimilar from the sample rate at the source.
Conventional sample rate conversion at the source port can occur if, for example, the multimedia device has fewer channels and a lower bit resolution. Increasing the resolution of comparing the sample rate to the frame rate using counters with long count time-out will introduce jitter. If jitter is to be avoided, or if sample rate conversion proves too costly for rather complex multimedia device output, then isochronous transfer should be used in lieu of sample rate conversion. Isochronous data transfer may require possibly an additional byte for each channel of data being transferred. It is desirable that an improvement be derived over conventional techniques. The desired isochronous transfer technique should use sample rate conversion at the destination (with relative phase change or frequency information sent across the network), can use phase-locked loops (PLLs) within the source and destination (with multiply and divide factors in the source and destination known and synchronized to the network FSR), or can use a PLL solely on the destination port (with a phase difference sent across the network). The desirous mechanics of transferring data either synchronously or isochronously using sample rate conversion at the destination, arbitrary rate synchronous to the network, or a single PLL at the destination but not the source, are all advantages and improvements over conventional transfer techniques, the details of which are set forth below.